package jenry.xml;

import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;

public class MyContentHandler extends DefaultHandler {
	String hisname,address,money,sex,status,tagName;
	
	public void startDocument() throws SAXException {
		System.out.println("--------startDocument-------");
	}
	
	public void endDocument() throws SAXException {
		System.out.println("--------endDocument-------");
		super.endDocument();
	}

	public void startElement(String uri, String localName, String qName,
			Attributes attributes) throws SAXException {
		System.out.println("--------startElement-------qName:"+qName);
		tagName = localName;
		if(localName.equals("worker")){
			for(int i=0;i<attributes.getLength();i++){
				System.out.println(attributes.getLocalName(i)+":"+attributes.getValue(i));
			}
		}
	}
	
	public void characters(char[] ch, int start, int length)
			throws SAXException {
		System.out.println("--------characters-------");
		if (tagName.equals("name"))
			hisname = new String(ch, start, length);
		else if (tagName.equals("sex"))
			sex = new String(ch, start, length);
		else if (tagName.equals("status"))
			status = new String(ch, start, length);
		else if (tagName.equals("address"))
			address = new String(ch, start, length);
		else if (tagName.equals("money"))
			money = new String(ch, start, length);
	}

	public void endElement(String uri, String localName, String qName)
			throws SAXException {
		tagName="";
		if(localName.equals("worker")){
			this.printout();
		}
		System.out.println("--------endElement-------qName:"+qName);
	}
	
	private void printout() {
		System.out.print("name: ");
		System.out.println(hisname);
		System.out.print("sex: ");
		System.out.println(sex);
		System.out.print("status: ");
		System.out.println(status);
		System.out.print("address: ");
		System.out.println(address);
		System.out.print("money: ");
		System.out.println(money);
		System.out.println();
	}
}
